﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using TR.AppService.Dto.RKGLDto;
using TR.Domain.Entity;
using TR.Domain.Entity.RK;

namespace TR.Domain.Repository.RKGLRepository
{
    public interface IWh_Inbill_hRepository
    {
        //入库信息新增
        Task<bool> widInsert(wh_Inbill_h wih,List<wh_Inbill_d> wid);

        //关联单号分页查询
        Task<List<GuanlianJHDH>> GLDHFenYeSelectAsync(int mys, int dqy, string? dqsj, string? jssj, GLDHTjDto tj);

        //关联单号总条数
        Task<int> Ztshu();

        //根据进货单号查询对应货品
        Task<List<JHDHchaHP>> JHDHchahp(string buy_code,HPTj tj);

        //仓库下拉框
        Task<List<bs_WareHouse>> CKXLKSelect();

        //入库管理主表查询
        Task<List<RKGL_SelectZB>> RKGL_SelectZB(int mys,int dqy,RKGLZbTjCx tj);

        //入库主表总条数
        Task<int> RKZtShu();

        //批量修改状态
        Task<bool> UpdateState(List<int> Bian, char zt);

        //根据仓库编号查询库位
        Task<List<bs_Ware_Area>> SelectWare(string ware_code);

        //批量逻辑删除
        Task<bool> RKGLDelect(List<int> isdel);

        //单表逻辑删除
        Task<bool> RKGLDel(int Bian);

        //入库管理批量审核
        Task<bool> SHUpdate(List<int> Bian, char state, string sureman, string suredate, string remark);

        //入库批量撤销
        Task<bool> CXUpdate(List<int> Bian);

        //根据编号查询信息
        Task<wh_Inbill_h> RKBhSelect(string bh);

        //编辑入库明细查询
        Task<List<RKMXXG>> RKMXXGSelect(int mys, int dqy, string tj);

        //编辑页面入库明细总条数
        Task<int> MXCount();

        //入库管理修改
        Task<bool> RKUpdate(wh_Inbill_h jcxx, List<wh_Inbill_d> rkmx);
    }
}
